
// console.log(Object.getOwnPropertyDescriptors(Promise.prototype));

const promise = new Promise((resolve, reject) => {
  resolve("123")
})
// 同一个promise可以被多次调用then方法
// promise.then(res => {
//   console.log("res1", res);
// })

// promise.then(res => {
//   console.log("res2", res);
// })

// promise.then(res => {
//   console.log("res3", res);
// })

// 2.then可以有返回值
// 普通的值，被作为一个新的Promise的resolve值

// promise.then(res => {
//   return new Promise((resolve, reject) => {
//     setTimeout(() => {
//       resolve(11111)
//     }, 3000)
//   })
// }).then(res => {
//   console.log("res", res);
// })

// 3.返回值是一个对象，该对象实现了thenable
promise.then(res => {
  return {
    then: function(resolve, reject) {
      resolve(22222)
    }
  }
}).then(res => {
  console.log("res", res);
})

